/**
 * 限制数字
 * @param value
 */
export const keepNum = (value: any) => {
  if (!value) {
    return ''
  }
  return value.toString().replace(/[^\d]/g, '')
}
/**
 * 限制输入2位小数
 */
export const keepDecimal = (value: any) => {
  if (!value) {
    return ''
  }
  value = value.toString()
  value = value.replace(/[^\d.]/g, '')
  // 必须保证第一个为数字而不是.
  value = value.replace(/^\./g, '')
  // 保证只有出现一个.而没有多个.
  value = value.replace(/\.{2,}/g, '.')
  // 保证.只出现一次，而不能出现两次以上
  value = value.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.')
  return value.replace(/^(\-)*(\d+)\.(\d{2}).*$/, '$1$2.$3')
}

export const max = (value: any, max: number) => {
  if (typeof value !== 'number') {
    value = parseFloat(value)
  }
  return value > max ? max : value
}
